fix: restore Smalruby assets and fix scratch-gui unit tests#4
Merged
Conversation
- Restore custom locales in src/locales and update locales reducer - Restore Smalruby default project (Hatti) and its assets - Replace cat icons with Hatti icons in ComingSoon component - Add missing PWA icon Co-Authored-By: Gemini <noreply@google.com>
- Migrate ruby-downloader.test.jsx to @testing-library/react - Resolve mock conflicts by using inline mocks - Fix lint warnings in modified files - All unit tests now pass Co-Authored-By: Gemini <noreply@google.com>
- Restore missing DefinePlugin environment variables (Google Drive, Mesh v2) - Restore PWA support (Workbox, WebpackPwaManifest) - Add process polyfill for Webpack 5 compatibility - Add Google Picker API headers to devServer - Restore Origin Trials configuration - Clean up trademarked images in ComingSoon component Co-Authored-By: Gemini <noreply@google.com>
takaokouji
pushed a commit
that referenced
this pull request
Mar 8, 2026
takaokouji
pushed a commit
that referenced
this pull request
Mar 8, 2026
takaokouji
added a commit
that referenced
this pull request
Apr 12, 2026
- Add next-steps guidance after student joins classroom (#1) - Add submit hint for students who haven't submitted yet (#2) - Add STAGE !== 'prod' failsafe for DEV_BYPASS_TOKEN (#3) - Add fullscreen tooltip to join code expand button (#4) - Improve member grid prompt to clarify clickable seats (#5) - Remove window._classroomIdToken debug variable (#8) Closes #495 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
9 tasks
takaokouji
added a commit
that referenced
this pull request
Apr 17, 2026
Rename smalrubyRuby_stringMethodR → smalrubyRuby_methodR and smalrubyRuby_stringMethodC → smalrubyRuby_methodC to support methods on all receiver types (string, array, hash). New REPORTER methods: lines, max, sort, join, keys, values New COMMAND methods: sort!, reverse! Add automatic migration for old project files (stringMethodR/C opcodes are replaced with methodR/C on load, unconditionally). Refs #524 (Phase 1 #4-#9) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
takaokouji
added a commit
that referenced
this pull request
May 7, 2026
Cherry-picked from upstream spork@29bdbd1fe (PR #4 by Aaron Dodson @ Google). Replace the GUI-side event translator (introduced in 471a08b) with upstream's actual fix in scratch-vm. upstream already added the proper case branches to Blocks.blocklyListen. We adopt the same pattern: each modern event name falls through to the corresponding legacy case, with payload normalization so both shapes work. Also added single-purpose handlers for block_comment_collapse and block_comment_resize which had no v1 equivalent. Cherry-pick context (per .claude/rules/upstream-cherry-pick.md): - 29bdbd1 is on upstream spork branch only - Tagged only on prerelease tags (v11.1.0-spork.15, v12.7.0-spork.{1,2}) - We adopted scratch-blocks v2 which is part of the same modern-Blockly migration track, so the new event names are already being emitted in our build — without this fix, blocks duplicated via the Blockly clipboard never get their comment registered in the VM, breaking Ruby code generation (looks_sayforsecs falls back to say(...) instead of puts(...)). - Acceptable per the policy: cherry-picking unreleased upstream commits is allowed for fatal bugs we can reproduce and that break our codebase structurally. Also adds .claude/rules/upstream-cherry-pick.md documenting the release-status verification procedure for future cherry-picks. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR restores Smalruby-specific customizations and fixes unit test failures in the
scratch-guipackage after its migration to thesmalruby3-editormonorepo. It also resolves runtime errors by fixing the Webpack configuration.Implementation Details
DefinePluginentries for environment variables (Google Drive, Mesh v2, GA, GTM).processpolyfill andProvidePluginfor Webpack 5 compatibility, resolvingReferenceError: process is not defined.devServer.HtmlWebpackPlugin.workbox-webpack-pluginandwebpack-pwa-manifestdependencies.webpack.config.js.ComingSooncomponent.ruby-downloader.test.jsxfrom Enzyme to@testing-library/react.jest-haste-mapduplicate mock warnings by moving manual mocks to inline mocks incolor-modes.test.jsandmonitor.test.jsx.__mocks__directories.make-toolbox-xml.jsand other modified files.Test Coverage
npm run test:unitinpackages/scratch-guipasses completely.npm run build:dev.Co-Authored-By: Gemini noreply@google.com